API: gdk: Remove gdk_set_pointer_hooks()
authorBenjamin Otte <otte@redhat.com>
Mon, 3 Jan 2011 15:05:16 +0000 (16:05 +0100)
committerBenjamin Otte <otte@redhat.com>
Mon, 3 Jan 2011 15:25:18 +0000 (16:25 +0100)
Its usecase was GERD - http://testbit.eu/~timj/historic/gerd/ - and that
project is long since dead.

It has been superseded in GTK 2.2 by GdkDisplayPointerHooks anyway.

docs/reference/gdk/gdk3-sections.txt
gdk/gdk.symbols
gdk/gdkdisplay.c
gdk/gdkwindow.h

index 5902b0853623d9ce7da39d7767e8ac6254f87a24..646faa840ff144b7c6d52a162c0778099b65b727 100644 (file)
@@ -473,10 +473,6 @@ gdk_window_set_device_events
 gdk_window_get_source_events
 gdk_window_set_source_events
 
-<SUBSECTION>
-GdkPointerHooks
-gdk_set_pointer_hooks
-
 <SUBSECTION>
 gdk_offscreen_window_get_surface
 gdk_offscreen_window_set_embedder
index 1f63b45cb3a9de328c126e5bd1b53c298fbe0f4f..36348c9fe413908beb1c810fe71ca18ee149ab9d 100644 (file)
@@ -307,7 +307,6 @@ gdk_selection_property_get
 gdk_selection_send_notify
 gdk_selection_send_notify_for_display
 gdk_set_double_click_time
-gdk_set_pointer_hooks
 gdk_set_program_class
 gdk_set_show_events
 gdk_setting_action_get_type G_GNUC_CONST
index fdd98604bad174c3ac4af6753501e9b15b995df9..68be28e70e5d3ded92a2a636752ae70e6ffb0a07 100644 (file)
@@ -103,27 +103,7 @@ static GdkWindow * multihead_default_window_at_pointer  (GdkDisplay      *displa
                                                          gint            *win_y);
 
 
-static void       singlehead_get_pointer (GdkDisplay       *display,
-                                         GdkScreen       **screen,
-                                         gint             *x,
-                                         gint             *y,
-                                         GdkModifierType  *mask);
-static GdkWindow* singlehead_window_get_pointer (GdkDisplay       *display,
-                                                GdkWindow        *window,
-                                                gint             *x,
-                                                gint             *y,
-                                                GdkModifierType  *mask);
-static GdkWindow* singlehead_window_at_pointer  (GdkDisplay       *display,
-                                                gint             *win_x,
-                                                gint             *win_y);
-
-static GdkWindow* singlehead_default_window_get_pointer (GdkWindow       *window,
-                                                        gint            *x,
-                                                        gint            *y,
-                                                        GdkModifierType *mask);
-static GdkWindow* singlehead_default_window_at_pointer  (GdkScreen       *screen,
-                                                        gint            *win_x,
-                                                        gint            *win_y);static GdkWindow *gdk_window_real_window_get_device_position     (GdkDisplay       *display,
+static GdkWindow *gdk_window_real_window_get_device_position     (GdkDisplay       *display,
                                                                   GdkDevice        *device,
                                                                   GdkWindow        *window,
                                                                   gint             *x,
@@ -161,18 +141,6 @@ static const GdkDisplayPointerHooks multihead_default_pointer_hooks = {
   multihead_default_window_at_pointer
 };
 
-static const GdkDisplayPointerHooks singlehead_pointer_hooks = {
-  singlehead_get_pointer,
-  singlehead_window_get_pointer,
-  singlehead_window_at_pointer
-};
-
-static const GdkPointerHooks singlehead_default_pointer_hooks = {
-  singlehead_default_window_get_pointer,
-  singlehead_default_window_at_pointer
-};
-
-static const GdkPointerHooks *singlehead_current_pointer_hooks = &singlehead_default_pointer_hooks;
 static const GdkDisplayPointerHooks *multihead_current_pointer_hooks = &multihead_default_pointer_hooks;
 
 G_DEFINE_TYPE (GdkDisplay, gdk_display, G_TYPE_OBJECT)
@@ -990,106 +958,6 @@ gdk_display_set_pointer_hooks (GdkDisplay                   *display,
   return (GdkDisplayPointerHooks *)result;
 }
 
-static void
-singlehead_get_pointer (GdkDisplay       *display,
-                       GdkScreen       **screen,
-                       gint             *x,
-                       gint             *y,
-                       GdkModifierType  *mask)
-{
-  GdkScreen *default_screen = gdk_display_get_default_screen (display);
-  GdkWindow *root_window = gdk_screen_get_root_window (default_screen);
-
-  *screen = default_screen;
-
-  singlehead_current_pointer_hooks->get_pointer (root_window, x, y, mask);
-}
-
-static GdkWindow*
-singlehead_window_get_pointer (GdkDisplay       *display,
-                              GdkWindow        *window,
-                              gint             *x,
-                              gint             *y,
-                              GdkModifierType  *mask)
-{
-  return singlehead_current_pointer_hooks->get_pointer (window, x, y, mask);
-}
-
-static GdkWindow*
-singlehead_window_at_pointer   (GdkDisplay *display,
-                               gint       *win_x,
-                               gint       *win_y)
-{
-  GdkScreen *default_screen = gdk_display_get_default_screen (display);
-
-  return singlehead_current_pointer_hooks->window_at_pointer (default_screen,
-                                                             win_x, win_y);
-}
-
-static GdkWindow*
-singlehead_default_window_get_pointer (GdkWindow       *window,
-                                      gint            *x,
-                                      gint            *y,
-                                      GdkModifierType *mask)
-{
-  GdkDisplay *display;
-
-  display = gdk_window_get_display (window);
-
-  return gdk_window_real_window_get_device_position (display,
-                                                     display->core_pointer,
-                                                     window, x, y, mask);
-}
-
-static GdkWindow*
-singlehead_default_window_at_pointer  (GdkScreen       *screen,
-                                      gint            *win_x,
-                                      gint            *win_y)
-{
-  GdkDisplay *display;
-
-  display = gdk_screen_get_display (screen);
-
-  return gdk_display_real_get_window_at_device_position (display,
-                                                         display->core_pointer,
-                                                         win_x, win_y);
-}
-
-/**
- * gdk_set_pointer_hooks:
- * @new_hooks: (allow-none): a table of pointers to functions for getting
- *   quantities related to the current pointer position,
- *   or %NULL to restore the default table.
- * 
- * This function allows for hooking into the operation
- * of getting the current location of the pointer. This
- * is only useful for such low-level tools as an
- * event recorder. Applications should never have any
- * reason to use this facility.
- *
- * This function is not multihead safe. For multihead operation,
- * see gdk_display_set_pointer_hooks().
- * 
- * Return value: the previous pointer hook table
- *
- * Deprecated: 3.0: Use gdk_display_set_device_hooks() instead.
- **/
-GdkPointerHooks *
-gdk_set_pointer_hooks (const GdkPointerHooks *new_hooks)
-{
-  const GdkPointerHooks *result = singlehead_current_pointer_hooks;
-
-  if (new_hooks)
-    singlehead_current_pointer_hooks = new_hooks;
-  else
-    singlehead_current_pointer_hooks = &singlehead_default_pointer_hooks;
-
-  gdk_display_set_pointer_hooks (gdk_display_get_default (),
-                                &singlehead_pointer_hooks);
-  
-  return (GdkPointerHooks *)result;
-}
-
 static void
 generate_grab_broken_event (GdkWindow *window,
                             GdkDevice *device,
index 582a9bf6d50aec5c4865eb5ca5d896131fe88adf..1cac906945c6b3ee291bc78ac3e23075afd43935 100644 (file)
@@ -38,7 +38,6 @@ G_BEGIN_DECLS
 
 typedef struct _GdkGeometry          GdkGeometry;
 typedef struct _GdkWindowAttr        GdkWindowAttr;
-typedef struct _GdkPointerHooks      GdkPointerHooks;
 typedef struct _GdkWindowRedirect    GdkWindowRedirect;
 
 /**
@@ -446,34 +445,6 @@ struct _GdkGeometry
   GdkGravity win_gravity;
 };
 
-/**
- * GdkPointerHooks:
- * @get_pointer: Obtains the current pointer position and modifier state.
- *  The position is given in coordinates relative to the window containing
- *  the pointer, which is returned in @window.
- * @window_at_pointer: Obtains the window underneath the mouse pointer,
- *  returning the location of that window in @win_x, @win_y. Returns %NULL
- *  if the window under the mouse pointer is not known to GDK (for example,
- *  belongs to another application).
- *
- * A table of pointers to functions for getting quantities related to
- * the current pointer position. GDK has one global table of this type,
- * which can be set using gdk_set_pointer_hooks().
- *
- * This is only useful for such low-level tools as an event recorder.
- * Applications should never have any reason to use this facility
- */
-struct _GdkPointerHooks 
-{
-  GdkWindow* (*get_pointer)       (GdkWindow      *window,
-                                  gint            *x,
-                                  gint            *y,
-                                  GdkModifierType *mask);
-  GdkWindow* (*window_at_pointer) (GdkScreen       *screen, /* unused */
-                                   gint            *win_x,
-                                   gint            *win_y);
-};
-
 typedef struct _GdkWindowClass GdkWindowClass;
 
 #define GDK_TYPE_WINDOW              (gdk_window_get_type ())
@@ -872,10 +843,6 @@ void       gdk_window_constrain_size      (GdkGeometry  *geometry,
 void gdk_window_enable_synchronized_configure (GdkWindow *window);
 void gdk_window_configure_finished            (GdkWindow *window);
 
-#if !defined (GDK_MULTIHEAD_SAFE) && !defined (GDK_MULTIDEVICE_SAFE)
-GdkPointerHooks *gdk_set_pointer_hooks (const GdkPointerHooks *new_hooks);
-#endif /* !GDK_MULTIHEAD_SAFE && !GDK_MULTIDEVICE_SAFE */
-
 GdkWindow *gdk_get_default_root_window (void);
 
 /* Offscreen redirection */